<script setup>
	import {
		watch,
		getCurrentInstance
	} from 'vue'
	import {
		useOrderBadgeStore
	} from '@/stores/order'
	import {
		storeToRefs
	} from 'pinia'
	import { onLaunch,onShow, onHide } from '@dcloudio/uni-app'
	import { login } from '@/utils/login.js' 
	
	/* ===== 全局数据（零依赖） ===== */
	const app = getCurrentInstance()?.app5
	const globalData = app?.globalData || {}
	
	/* ===== 静默登录入口 ===== */
	async function initLogin() {
	  console.log('📍 initLogin 开始')
	
	  // ① 尝试登录（无 token 会自动走 wx.login）
	  const token = await login()
	  if (token) {
	    console.log('✅ 登录成功，准备获取用户信息')
	    // const info = await getUserInfo(token)
	    // if (info) {
	    //   console.log('✅ 用户信息获取成功', info)
	    //   globalData.token = token
	    //   globalData.userInfo = info
	    //   // app?.$isResolve?.()    
	    //   return
	    // }
	    // console.warn('⚠️ 获取用户信息失败，重新登录')
		console.log('先不获取用户信息')
		return
	  }
	
	  // ② 登录失败 → 清掉 → 可选跳错误页
	  console.error('❌ 登录失败，清掉 token')
	  wx.removeStorageSync('token')
	  // 可选：跳错误页或静默重试
	  // uni.reLaunch({ url: '/pages/error/error' })
	 
	}

	const badge = useOrderBadgeStore()
	const {
		hasUnread,
		unhandledIds
	} = storeToRefs(badge)

	
	/* ===== 应用生命周期 ===== */
	onShow(async () => {
	  console.log('📱 App Show 时间:', new Date().toLocaleTimeString())
	  // // 微信分享配置
	  // uni.showShareMenu({ withShareTicket: true, menus: ['shareAppMessage'] })
	  // // 常亮屏幕
	  // wx.setKeepScreenOn({ keepScreenOn: true })
	  // 静默登录（无 token 会自动获取）
	  await initLogin()
	  console.log('📍 App Show 完成')
	  
	})
	
	onHide(() => console.log('📴 App Hide 时间:', new Date().toLocaleTimeString()))

	// 3. 监听 → 驱动 tabBar
	watch(hasUnread, val => {
		val
			?
			uni.showTabBarRedDot({
				index: 1
			}) :
			uni.hideTabBarRedDot({
				index: 1
			})
	}, {
		immediate: true
	})
</script>

<style>
	/*每个页面公共css */
</style>